#ifndef OBJETOMODELO_H_
#define OBJETOMODELO_H_

#include <iostream>

#include "AtributoDesconocidoException.h"

using namespace std;

class ObjetoModelo {
	
protected:

	string nombreClase;

public:

	ObjetoModelo(){
		this->nombreClase = "sin_nombre";
	}

	string getNombreClase(){
		return this->nombreClase;
	}

	void setNombreClase(string nc){
		this->nombreClase = nc;
	}

	virtual string cerrarTag(){return "";}

	virtual	void agregarAtributo(string n, string v) throw (...){}
	
	virtual void agregarObjeto(ObjetoModelo* om)throw(...){
		throw new AtributoDesconocidoException(om->getNombreClase());
	}

};
#endif 